博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
thinkCMF----列表页跳转
阅读量:6882 次
发布时间:2019-06-27

本文共 2694 字,大约阅读时间需要 8 分钟。

thinkCMF列表循环有个:用来循环文章列表。

$where=[ 'post.create_time'=>['egt',0] ]; $page=[ 'list_rows'=>10, 'next'=>'下一页', 'prev'=>'上一页' ];

但是用这个,一直用不了,就自己重新写了一个:修改 ListController.class 类:

class ListController extends HomeBaseController{    public function index(){        $id = $this->request->param('id', 0, 'intval');                    $portalCategoryModel = new PortalCategoryModel();        $category = $portalCategoryModel->where('id', $id)->where('status', 1)->find();        // 获取当前栏目下的所有子栏目ID        $category_list = Db::name('portal_category')->field(array('id','parent_id'))->select();        $category_arr = array();        $cur_category_list = array();        array_push($cur_category_list,intval($id));        foreach($category_list as $v){            $arr = array();            $arr['id'] = $v['id'];            $arr['pid'] = $v['parent_id'];            array_push($category_arr,$arr);        }        //得到当前栏目所有的子栏目ids        $cur_category_ids = array_merge($cur_category_list,get_all_child($category_arr,$id));        //获取当前所有子栏目的所有文章ids        $all_post_ids_arr = array();        $all_post_ids = Db::name('portal_category_post')->where('category_id','in',$cur_category_ids)->field(array('post_id'))->select();        foreach($all_post_ids as $v){            array_push($all_post_ids_arr,$v['post_id']);        }                // 获取当前栏目及子栏目所有的文章列表        $where = array();        $where['id'] = array('in',$all_post_ids_arr);        $where['post_type'] = 1;        $where['post_status'] = 1;        $pagelist_arr = Db::name('portal_post')->where($where)->paginate(12);        $page = $pagelist_arr->render();        // 处理跳转链接 和 栏目的图片        $pagelist = array();        foreach($pagelist_arr as $k => $v){            $v['thumb'] = '/upload/'.json_decode($v['more'],true)['thumbnail'];            $v['category_id'] = $this->get_category_id($v['id']);            array_push($pagelist,$v);        }        $this->assign('pagelist',$pagelist);            $this->assign('category', $category);        $this->assign('page', $page);        $listTpl = empty($category['list_tpl']) ? 'list' : $category['list_tpl'];        return $this->fetch('/' . $listTpl);    }    /*     * get_category_id 根据文章的id 获取栏目 category_id     */    private function get_category_id($id){        $categoryinfo = Db::name('portal_category_post')->where('post_id','eq',$id)->field('category_id')->find();         return $categoryinfo['category_id'];    }}

具体使用:

 

转载于:https://www.cnblogs.com/e0yu/p/9540734.html

你可能感兴趣的文章
CVS For Linux
查看>>
中云融信 SNS携手云计算将解决数据之殇
查看>>
渗透测试员分享黑客最常利用的那些漏洞
查看>>
北邮-世纪互联联合实验室揭牌仪式举行
查看>>
好的与坏的,Swift 语言面面观(一)
查看>>
阿里云海外征战记:跻身全球前三,只用了两年半
查看>>
解密回声消除技术之二(应用篇)
查看>>
Go语言的web程序写法
查看>>
IDF2011:基于SaaS模式的"教学云"案例
查看>>
《Linux From Scratch》第三部分:构建LFS系统 第七章:基本系统配置- 7.5. 配置系统时间...
查看>>
云计算你必须思考的8大问题
查看>>
Windows7 Debug Test
查看>>
HTTPS连接的前几毫秒发生了什么
查看>>
从变量到封装:一文带你为机器学习打下坚实的Python基础
查看>>
给大家共享一个基本算法包
查看>>
Riverbed:SDN向广域网扩展为企业带来哪些价值
查看>>
定义中国网络安全市场战略高度,绿盟科技为“互联网+”保驾护航
查看>>
听听第一个在Devops技术领域“吃螃蟹”者的心声
查看>>
《数学建模:基于R》——1.3 非参数检验
查看>>
多维防护:虚拟化安全挑战的破解之道
查看>>